From acd1abe9f93c8148f6c53a9e6a0a939843a1dbd3 Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Wed, 22 Feb 2006 09:54:20 +0100 Subject: [PATCH] When thermal interrupt happened when vmx guest is running, smp_thermal_interrupt() should be called. Signed-off-by: Yunhong Jiang --- xen/arch/x86/hvm/vmx/vmx.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c index 08a9115a32..9b935d4df6 100644 --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -1753,6 +1753,9 @@ static inline void vmx_vmexit_do_extint(struct cpu_user_regs *regs) fastcall void smp_call_function_interrupt(void); fastcall void smp_spurious_interrupt(struct cpu_user_regs *regs); fastcall void smp_error_interrupt(struct cpu_user_regs *regs); +#ifdef CONFIG_X86_MCE_P4THERMAL + fastcall void smp_thermal_interrupt(struct cpu_user_regs *regs); +#endif if ((error = __vmread(VM_EXIT_INTR_INFO, &vector)) && !(vector & INTR_INFO_VALID_MASK)) @@ -1780,6 +1783,11 @@ static inline void vmx_vmexit_do_extint(struct cpu_user_regs *regs) case ERROR_APIC_VECTOR: smp_error_interrupt(regs); break; +#ifdef CONFIG_X86_MCE_P4THERMAL + case THERMAL_APIC_VECTOR: + smp_thermal_interrupt(regs); + break; +#endif default: regs->entry_vector = vector; do_IRQ(regs); -- 2.30.2